package com.ruoyi.production.domain.fertilizer;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;

/**
 * 化肥购买申请对象 fertilizer_purchase_apply
 *
 * @author ruoyi
 * @date 2021-07-11
 */
public class FertilizerPurchaseApply extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 编号自动编号，主码 */
    private Long fertilizerPurchaseApplyId;

    /** 肥料类型 */
    @Excel(name = "肥料类型编号")
    private Long fertilizerTypeId;
    @Excel(name = "肥料类型")
    private String fertilizerType;

    /** 肥料名称 */
    @Excel(name = "肥料名称编号")
    private Long fertilizerNameId;
    @Excel(name = "肥料名称")
    private String fertilizerName;

    /** NPK含量 */
    @Excel(name = "NPK含量")
    private String npkContent;

    /** 肥料品牌 */
    @Excel(name = "肥料品牌")
    private String brand;

    /** 购自公司 */
    @Excel(name = "购自公司")
    private String originCompany;

    /** 申请量 */
    @Excel(name = "申请量")
    private Double applyAmount;

    /** 单位 */
    @Excel(name = "单位")
    private String applyUnit;
    /** 预计使用时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预计使用时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planUseTime;

    public Date getPlanUseTime() {
        return planUseTime;
    }

    public void setPlanUseTime(Date planUseTime) {
        this.planUseTime = planUseTime;
    }

    /** 审批状态 */
    @Excel(name = "审批状态", readConverterExp = "0=未审批,1=审批通过,2=不通过")
    private Long approvalStatus;

    /** 备注 */
    @Excel(name = "备注")
    private String note;

    public void setFertilizerPurchaseApplyId(Long fertilizerPurchaseApplyId)
    {
        this.fertilizerPurchaseApplyId = fertilizerPurchaseApplyId;
    }

    public Long getFertilizerPurchaseApplyId()
    {
        return fertilizerPurchaseApplyId;
    }
    public void setFertilizerTypeId(Long fertilizerTypeId)
    {
        this.fertilizerTypeId = fertilizerTypeId;
    }

    public Long getFertilizerTypeId()
    {
        return fertilizerTypeId;
    }

    public void setFertilizerType(String fertilizerType) {
        this.fertilizerType = fertilizerType;
    }
    public String getFertilizerType() {
        return fertilizerType;
    }

    public void setFertilizerNameId(Long fertilizerNameId)
    {
        this.fertilizerNameId = fertilizerNameId;
    }

    public Long getFertilizerNameId()
    {
        return fertilizerNameId;
    }

    public void setFertilizerName(String fertilizerName) {
        this.fertilizerName = fertilizerName;
    }
    public String getFertilizerName() {
        return fertilizerName;
    }

    public void setNpkContent(String npkContent)
    {
        this.npkContent = npkContent;
    }

    public String getNpkContent()
    {
        return npkContent;
    }
    public void setBrand(String brand)
    {
        this.brand = brand;
    }

    public String getBrand()
    {
        return brand;
    }
    public void setOriginCompany(String originCompany)
    {
        this.originCompany = originCompany;
    }

    public String getOriginCompany()
    {
        return originCompany;
    }
    public void setApplyAmount(Double applyAmount)
    {
        this.applyAmount = applyAmount;
    }

    public Double getApplyAmount()
    {
        return applyAmount;
    }
    public void setApplyUnit(String applyUnit)
    {
        this.applyUnit = applyUnit;
    }

    public String getApplyUnit()
    {
        return applyUnit;
    }
    public void setApprovalStatus(Long approvalStatus)
    {
        this.approvalStatus = approvalStatus;
    }

    public Long getApprovalStatus()
    {
        return approvalStatus;
    }
    public void setNote(String note)
    {
        this.note = note;
    }

    public String getNote()
    {
        return note;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("fertilizerPurchaseApplyId", getFertilizerPurchaseApplyId())
            .append("fertilizerTypeId", getFertilizerTypeId())
            .append("fertilizerNameId", getFertilizerNameId())
            .append("npkContent", getNpkContent())
            .append("brand", getBrand())
            .append("originCompany", getOriginCompany())
            .append("applyAmount", getApplyAmount())
            .append("applyUnit", getApplyUnit())
            .append("approvalStatus", getApprovalStatus())
            .append("note", getNote())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
